// 主函数入口
$(function () {
    $('.register-forget a:last-child').click(ForgetPwd);
    $('#forget-pwd-div').children('a').click(ReturnLogin);
    BindBtnEvent('#login-btn', SubmitAjax);
    BindBtnEvent('#refresh', RefreshAjax);
    $('#id_username').addClass('my-input');
    $('#id_password').addClass('my-input');
    $('#id_code').addClass('code');

})
// 为界面添加键盘监听事件
$(window).keydown(function (event) {
    switch (event.keyCode) {
        case 13:
            $('#login-btn').trigger('click');
    }
})

// 返回登录框动画
function ReturnLogin() {
    $('#forget-pwd-div').removeClass('forget-pwd-div-left-move').addClass('forget-pwd-div-right-move');
    $('#login-form').removeClass('login-left-move');
}

// 忘记密码动画
function ForgetPwd() {
    $('#login-form').addClass('login-left-move');
    $('#forget-pwd-div').removeClass('forget-pwd-div-right-move').addClass('forget-pwd-div-left-move');
}

// 绑定事件函数，参数一为需要绑定的元素id，参数二为绑定的事件函数
function BindBtnEvent(ele, func) {
    $(ele).click(func);
}

// Login Ajax
function SubmitAjax() {
    $(".error-msg").text("")
    // 进行ajax请求
    $.ajax({
        url: '/login/ajax/',  // 登录页面的请求URL，目前写死
        type: 'post',
        data: $("#login-form").serialize(),  // 获取form表单进行格式化
        dataType: "JSON",  // 保证数据提交格式为JSON
        success: function (res) {  // 成功后的回调函数
            if (res.status) {
                alert('登录成功！')
                window.location.replace(res.redirect_url);  // 接收重定向URL
                console.log(res.redirect_url);

            } else {
                $.each(res.errors, function (name, data) {
                    const id_input=$("#id_" + name)
                    // id_input.parent("div").addClass("has-error")
                    id_input.parent('div').next().text(data[0]);
                    RefreshAjax();
                });
            }
        }
    });
}
// 刷新验证码的ajax
function RefreshAjax() {
    $.ajax({
        url: '/code/',  // 登录页面的请求URL，目前写死
        type: 'get',
        success(res) {
            console.log(1);
            $('#refresh').attr('src', '/code/')
        }
    });
};
